/*!
 @header CirclePickerViewController.h
 @author 王 文彬
 @version 1.0.0 2013/01/30 Creation
 Copyright (c) 2013年 mypocketbaby. All rights reserved.
 */

#import <UIKit/UIKit.h>
#import "JSONRequest.h"

@class Circle;

/*!
 @abstract CirclePickerViewController的协议，定义了获取到在当前已选择到的圈子的集合的方法。
 @discussion @optional
 */
@protocol CirclePickerDelegate <NSObject>

@optional

/*!
 @abstract 获取到在当前已选择到的圈子的集合。
 @discussion @optional
 @param circles 圈子对象集合。
 */
- (void)circlesPicked:(NSArray *)circles;

@end

/*!
 @abstract CirclePickerViewController为通用类，用于多项选择圈子，比如在发布商讯时。
 */
@interface CirclePickerViewController : UITableViewController <JSONRequestDelegate>
{   
    NSArray* _pickedCircles;     //外部传入被选中的圈子数据
    id<CirclePickerDelegate> __weak _delegate;
}

/*!
 @abstract 返回一个静态的CirclePickerViewController实例
 */
//+ (CirclePickerViewController *)sharedCirclePickerViewController;

- (void)backButtonEvent;
- (void)saveButtonEvent;

- (NSMutableArray *)circlesWeGot;
/*!
 @abstract CirclePickerViewController的代理对象
 此代理必须适应CirclePickerDelegate
 */
@property (weak, nonatomic) id<CirclePickerDelegate> delegate;

/*!
 @abstract 已被选中的圈子列表集合。
 用于设置默认或者以前设置过的圈子集合。
 */
@property (strong, nonatomic) NSArray* pickedCircles;

@property (strong, nonatomic) NSMutableArray *indicators;

@property (strong, nonatomic) NSMutableArray *dataSource;


@end
